package com.eight.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.eight.pojo.SysMenu;
import com.eight.vo.MenuVo;

import java.awt.*;
import java.util.List;

/**
 * @Description: 业务层的接口模板
 * @Author: Van.Planifolia
 * @CreateTime: 2023-02-23  17:21
 * @Version: 1.0
 */
public interface PermissionService extends IService<SysMenu>{

    /**
     * 根据用户名字查询用户权限
     * @param name 用户名字
     * @return 查询到的权限List
     */
    List<SysMenu> getPermissionByName(String name);

    /**
     * 通过从token中的名称获取到当前登录用户的权限
     * @return 返回当权用户的经过 三级筛选的权限
     */
    List<MenuVo> getPermissionByTokenName();

    /**
     * 查询所有的权限
     * @return 返回所有的权限
     */
    List<SysMenu> getPermissionAll();

    /**
     * 查询所选角色的所有权限id
     * @param roleId 角色id
     * @return 返回所有权限id
     */
    List<Integer> getPermissionByRid(int roleId);

    /**
     * 根据权限id修改权限
     * @param sysMenu 被修改全新啊的新信息
     * @return 返回修改的结果
     */
    Integer updatePermission(SysMenu sysMenu);
}
